Instructions in microprocessors sometimes stall, halting forward progress until the stall is resolved. Because it may be helpful to uncover other independent stalls among subsequent instructions, the microprocessor may perform a runahead operation configured to detect other stalls while the initial stall is being resolved. While runahead may uncover other potential stalls, continued execution with missing or invalid data may pollute the cache.